#include <dogon/glsl.h>



/***
 *** idea for random numer generators --> ALSO SEE  "../random.h"
 ***/

#if 0

template<typename T>                   T           uniform(T min, T max);
template<typename T,int N>             vec<T,N>    uniform(T min, T max);
template<typename T,int N, int M = N>  mat<T,N,M>  uniform(T min, T max);

template<typename T>                   T           gaussian(T mu, T sigma);
template<typename T,int N>             vec<T,N>    gaussian(T mu, T sigma);
template<typename T,int N, int M = N>  mat<T,N,M>  gaussian(T mu, T sigma);

#endif


#include <string>
#include <vector>






#if 0


// NOP() - declaration
extern "C" {
  extern unsigned long __nop_counter;
  extern void NOP();
}
#if 1
float a_init=0,b_init=0,c_init=0;
// NOP() - imlementation
extern "C" {
  unsigned long __nop_counter = 0;
  void NOP() { __nop_counter++; }
}
#endif


int main()
{
	full_syntax_test tmp;

	tmp.test_floats();
	tmp.test_vecs();
	tmp.test_mats();


	int retval;
	
	//retval = test_upperlimit<float>() ? 1 : 0;

	retval = test_sin<float>() ? 1 : 0;
	retval = test_add<float>() ? 1 : 0;
	
	return retval;
}





# else // 0





# endif // 0


